<?php

class AssistecHelper extends Helper {
    /*
     * @return Nome do Status
     */

    public function getStatusPadrao() {
        $model = ClassRegistry::load('status', 'Model');
        $padrao = $model->first(array("conditions" => array("padrao" => "1")));
        return $padrao["nome"];
    }

    public function getBeneficiario($id) {
        $model = ClassRegistry::load('rh_funcionarios', 'Model');
        $beneficiario = $model->first(array("conditions" => array("id" => $id)));
        return $beneficiario["nome"];
    }

    public function getPedidoAndamento($id) {
        $model = ClassRegistry::load('ocorrencia', 'Model');
        $quantidade = $model->count(array("conditions" => array(
                        "beneficiario" => $id,
                        "or" => array(
                            "status_id" => array(0, 1, 5)
                        )
                    )
                ));
        return $quantidade;
    }

    public function getSolicitacaoAndamento($id) {
        $model = ClassRegistry::load('eticket_pedidos', 'Model');
        $quantidade = $model->count(array("conditions" => array(
                        "users_id" => $id,
                        "or" => array(
                            "status_id" => array(0, 1, 2)
                        )
                    )
                ));
        return $quantidade;
    }

    /*
     * @param Recebe o Id do gerente que verificará pendencia de aprovação
     * @return Integer
     */

    public function getSolicitacaoAprovar($id) {
        $model = ClassRegistry::load("ocorrencia", "Model");
        $retorno = $model->fetch("
select Count(*) from
  `financeiro_reembolsos` INNER JOIN
  `rh_funcionarios` ON `financeiro_reembolsos`.`beneficiario` = `rh_funcionarios`.`id`
WHERE
   `rh_funcionarios`.`gerente_id` = $id
   AND `financeiro_reembolsos`.`status_id` = 0
");
        $retorno = $retorno[0]["Count(*)"];
        return $retorno;
    }

    public function statusRh($condicao=array()) {
        $model = ClassRegistry::load("rh_funcionarios");
        return $model->count($condicao);
    }

    public function statusFinanceiro($condicao=array()) {
        $model = ClassRegistry::load("ocorrencia");
        return $model->count($condicao);
    }

    public function statusFinanceiroValor($condicao=array()) {
        $model = ClassRegistry::load("ocorrencia");
        return $model->first($condicao);
    }

    public function getCompromissos($id){
        $model = ClassRegistry::load("agenda_compromissos");
        $where = array(
            "conditions"=>array(
                "termino >"=>date("Y-m-d H:i"),
                "funcionario_id"=>$id
            ),
            "fields"=>array(
                "date_format(inicio,'%d/%m/%Y %H:%i') as inicio",
                "titulo"
            ),
            "order"=>"inicio ASC",
            "limit"=>"4"
        );
        return $model->all($where);
    }

    public function cortaTexto($length, $complement, $text){
        if(strlen($text) > $length):
            $text = substr($text, 0, $length);
            $length = strrpos($text, " ");

            return substr($text, 0, $length) . $complement;
        else:
            return $text;
        endif;


    }

    public function avisosUsuario($setor) {
        $where = array(
            "conditions" => array(
                "or" => array(
                    "rh_setor_id" => array("0", $setor)
                )
            ),
            "limit" => "5",
            "order" => "created DESC"
        );
        $model = ClassRegistry::load("admin_avisos", "Model");
        return $model->all($where);
    }

    public function criaSenha() {
        $CaracteresAceitos = 'abcdxywzABCDZYWZ0123456789';
        $max = strlen($CaracteresAceitos) - 1;
        for ($i = 0; $i < 8; $i++) {
            $retorno .= $CaracteresAceitos{mt_rand(0, $max)};
        }
        return $retorno;
    }

    //APIs
    public function apiMaps($endereco) {
        $retorno = "<img src=\"http://maps.google.com/maps/api/staticmap?center=R. Jacob Emerick , 104 apto 14 - São Vicente&zoom=16&size=400x400&
markers=size:medium|label:A|color:blue|R. Jacob Emerick , 104 apto 14 - São Vicente&sensor=true
\"/>";
        return $retorno;
    }

    //talk
}

?>